import java.util.Arrays;

public class test_3_5 {
    public static void main(String[] args) {
        int[] arr=new int[10];
        Arrays.fill(arr,1,3,5);//[1,3)
//        Arrays.fill(arr,1);
        System.out.println(Arrays.toString(arr));
    }
//    public static void main(String[] args) {
//        int[] arr={1,2,3,4};
//        int[] arr1={5,6,7,8};
//        boolean flg=Arrays.equals(arr1,arr);
//        System.out.println(flg);
//    }
//    public static void main(String[] args) {
//        int[][] arr=new int[2][];
//        arr[0]=new int[3];
//        arr[1]=new int[5];
//        for(int i=0;i< arr.length;i++){
//            for(int j=0;j<arr[i].length;j++){//因为列没定义，故arr[i].length是null，可以使用不规则数组来解决这个问题
//                System.out.print(arr[i][j]+" ");
//            }
//            System.out.println();
//        }
//    }
//    public static void main(String[] args) {
//        int[][] arr={{1,2,3},{4,5,6}};
////        System.out.println(arr.length);
////        System.out.println(arr[0]);
////        System.out.println(arr[0].length);
//        System.out.println(Arrays.deepToString(arr));//可遍历二维数组
//        for(int i=0;i< arr.length;i++){
//            for(int j=0;j<arr[i].length;j++){//注意这样的定义方式
//                System.out.print(arr[i][j]+" ");
//            }
//            System.out.println();
//        }
//        System.out.println("=================");
//        for(int[] a:arr){//先遍历二维，再遍历一维
//            for(int x:a){
//                System.out.print(x+" ");
//            }
//            System.out.println();
//        }
//    }
//    public static void reverse(int[] arr) {//第一个和最后一个交换，然后以此类推
//        int left=0;
//        int right= arr.length-1;
//        while(left<right){//当left=right时，说明已经交换成功了
//            int tmp=arr[left];
//            arr[left]=arr[right];
//            arr[right]=tmp;
//            left++;
//            right--;
//        }
//    }
//    public static void main(String[] args) {
//        int[] arr1={1,9,2,4,7,8,5};
//        reverse(arr1);
//        System.out.println(Arrays.toString(arr1));
//    }
//    public static void bubbleSort(int[] arr) {
//        for(int i=0;i< arr.length-1;i++){//这个表示趟数
//            boolean flg=false;//刚开始如果进不去if语句，就说明没有要交换的，则已经排序好啦,且如果第二趟已经排好，则要第三趟才知道排好啦，才可以输出
//            for(int j=0;j< arr.length-i-1;j++){
//                if(arr[j]>arr[j+1]){
//                    int tmp=arr[j];
//                    arr[j]=arr[j+1];
//                    arr[j+1]=tmp;
//                    flg=true;
//                }
//            }
//            if(!flg){
//                break;
//            }
//        }
//    }
//    public static void main(String[] args) {
//        int[] arr1={1,2,4,5,6,3,12,34,22};
//        bubbleSort(arr1);
//        System.out.println(Arrays.toString(arr1));
//    }
//    public static void main(String[] args) {
//        int[] arr1={1,2,4,5,6,3,12,34,22};
//        Arrays.sort(arr1);
//        System.out.println(Arrays.toString(arr1));
//    }
//    public static int countnum=0;
//    public static int binarySearch(int[] arr,int key) {
//        int left = 0;
//        int right = arr.length - 1;
//        while (left <= right) {
//            countnum++;
//            int mid = (left + right) / 2;//写while循环里面，每次判断完后，mid值会做出相应的调整
//            if (arr[mid] > key) {
//                right = mid - 1;
//            } else if (arr[mid] < key) {
//                left = mid + 1;
//            } else {
//                return mid;
//            }
//        }
//        return -1;
//    }
//
//    public static void main(String[] args) {
//        int[] arr1={1,2,3,4,5,6};
//        int ret=binarySearch(arr1,4);
////        int ret=Arrays.binarySearch(arr1,4);
//        if(ret==-1){
//            System.out.println("没有找到关键字......");
//        }
//        else{
//            System.out.println(ret);
//            System.out.println(countnum);
//        }
//    }
//    public static int find(int[] arr,int key) {
//        for(int i=0;i< arr.length;i++){
//            if(arr[i]==key){
//                return i;
//            }
//        }
//        return -1;//因为数组下标没有负数
//    }
//    public static void main(String[] args) {
//        int[] arr1={1,2,3,4,5};
//        int ret=find(arr1,10);
//        if(ret==-1){
//            System.out.println("没找到关键字......");
//        }
//        else{
//            System.out.println(ret);
//        }
//    }
//    public static void main(String[] args) {
//        int[] arr1={1,2,3,4,5};
//        int[] arr2=Arrays.copyOfRange(arr1,2,4);
////        int[] arr2=Arrays.copyOf(arr1,arr1.length);
////        int[] arr2=new int[arr1.length];
////        System.arraycopy(arr1,2,arr2,1,3);
//        System.out.println(Arrays.toString(arr1));
//        System.out.println(Arrays.toString(arr2));
//    }
//    public static int[] copy(int[] arr) {
//        int[] copy=new int[arr.length];
//        for(int i=0;i< arr.length;i++){
//            copy[i]=arr[i];
//        }
//        return copy;//虽然copy是局部变量，要被栈回收，但是原本指向的对象(在堆中)早已经被int[] arr2接收，故可以拷贝成功
//    }
//    public static void main(String[] args) {
//        int[] arr1={1,2,3,4,5};
//        int[] arr2=copy(arr1);
//        System.out.println("拷贝后=======");
//        System.out.println(Arrays.toString(arr1));
//        System.out.println(Arrays.toString(arr2));
//    }
//    public static void main(String[] args) {
//        int[] arr1={1,2,3,4,5};
//        int[] arr2=new int[5];
//        System.out.println("拷贝前========");
//        System.out.println(Arrays.toString(arr1));
//        System.out.println(Arrays.toString(arr2));
//        for(int i=0;i<arr1.length;i++){
//            arr2[i]=arr1[i];
//        }
//        System.out.println("拷贝后========");
//        System.out.println(Arrays.toString(arr1));
//        System.out.println(Arrays.toString(arr2));
//    }
}
